/**
* @author sunke
* @Date 2025-03-21 15:14:47
* @description 客户信息
*/
package com.monitor.model;

import com.monitor.pubInter.BaseTimeDoMain;
import java.util.Date;
import javax.validation.constraints.*;
import org.hibernate.validator.constraints.Length;

public class Customer extends BaseTimeDoMain {
    /**
     * 来源
     */
    private Integer source;

    /**
     * 排序
     */
    private Integer sortNum = 0;

    /**
     * 是否显示
     * 1:是:Y,0:否:N
     */
    private Integer showFlag = 1;

    /**
     * 是否删除
     * 1:删除:Y,0:正常:N
     */
    private Integer delFlag = 0;

    /**
     * 客户姓名
     */
    @Length(max=50,message="客户姓名长度最大值50")
    private String name;

    /**
     * 客户手机号
     */
    @Length(max=50,message="客户手机号长度最大值50")
    private String phone;

    /**
     * 
     */
    @Length(max=50,message="company长度最大值50")
    private String company;

    /**
     * 职位
     */
    @Length(max=50,message="职位长度最大值50")
    private String position;

    /**
     * 性别
     */
    @Length(max=10,message="性别长度最大值10")
    private String gender;

    /**
     * 生日
     */
    @Length(max=20,message="生日长度最大值20")
    private String birthday;

    /**
     * 座机
     */
    @Length(max=20,message="座机长度最大值20")
    private String telephone;

    /**
     * 客户QQ
     */
    @Length(max=20,message="客户QQ长度最大值20")
    private String qq;

    /**
     * 微信号
     */
    @Length(max=20,message="微信号长度最大值20")
    private String wechat;

    /**
     * 联系地址
     */
    @Length(max=200,message="联系地址长度最大值200")
    private String address;

    /**
     * 邮箱
     */
    @Length(max=250,message="邮箱长度最大值250")
    private String email;

    /**
     * 相关备注信息
     */
    @Length(max=1000,message="相关备注信息长度最大值1000")
    private String remark;

    /**
     * 云客客户id
     */
    @Length(max=50,message="云客客户id长度最大值50")
    private String ykId;

    /**
     * 云客跟进用户id
     */
    @Length(max=50,message="云客跟进用户id长度最大值50")
    private String ykUserId;

    /**
     * 云客跟进员工id
     */
    @Length(max=50,message="云客跟进员工id长度最大值50")
    private String partnerId;

    /**
     * 上次沟通说明
     */
    @Length(max=250,message="上次沟通说明长度最大值250")
    private String lastContactRemark;

    /**
     * 上次沟通小标签 文字
     */
    @Length(max=50,message="上次沟通小标签 文字长度最大值50")
    private String lastContactTag;

    /**
     * 跟进时间
     */
    private Date followTime;

    /**
     * 企业性质
     */
    @Length(max=250,message="企业性质长度最大值250")
    private String econKind;

    /**
     * 公司类型
     */
    @Length(max=50,message="公司类型长度最大值50")
    private String comType;

    /**
     * 经营范围
     */
    @Length(max=500,message="经营范围长度最大值500")
    private String scope;

    /**
     * 注册资本
     */
    @Length(max=50,message="注册资本长度最大值50")
    private String registCapi;

    /**
     * 企业法人
     */
    @Length(max=50,message="企业法人长度最大值50")
    private String operName;

    /**
     * 员工数量
     */
    private Integer employeesNum;

    /**
     * 所属行业
     */
    @Length(max=50,message="所属行业长度最大值50")
    private String industry;

    /**
     * 主营产品
     */
    @Length(max=200,message="主营产品长度最大值200")
    private String mainProduce;

    /**
     * 最后一次沟通时间
     */
    private Date lastContactTime;

    /**
     * 上次沟通意向 1有意向/2无意向/3资料错误/4二次外呼/5无关电话/6未接通/7未明确
     */
    private Integer lastContactIntent;

    /**
     * 用户id
     */
    @Length(max=50,message="用户id长度最大值50")
    private String userId;

     /**
     *主键
     */
    public static final String ID = "customer.c_id";

     /**
     *来源
     */
    public static final String SOURCE = "customer.c_source";

     /**
     *创建时间
     */
    public static final String CREATE_TIME = "customer.c_create_time";

     /**
     *更新时间
     */
    public static final String UPDATE_TIME = "customer.c_update_time";

     /**
     *排序
     */
    public static final String SORT_NUM = "customer.c_sort_num";

     /**
     *是否显示
     */
    public static final String SHOW_FLAG = "customer.c_show_flag";

     /**
     *是否删除
     */
    public static final String DEL_FLAG = "customer.c_del_flag";

     /**
     *客户姓名
     */
    public static final String NAME = "customer.c_name";

     /**
     *客户手机号
     */
    public static final String PHONE = "customer.c_phone";

    public static final String COMPANY = "customer.c_company";

     /**
     *职位
     */
    public static final String POSITION = "customer.c_position";

     /**
     *性别
     */
    public static final String GENDER = "customer.c_gender";

     /**
     *生日
     */
    public static final String BIRTHDAY = "customer.c_birthday";

     /**
     *座机
     */
    public static final String TELEPHONE = "customer.c_telephone";

     /**
     *客户QQ
     */
    public static final String QQ = "customer.c_qq";

     /**
     *微信号
     */
    public static final String WECHAT = "customer.c_wechat";

     /**
     *联系地址
     */
    public static final String ADDRESS = "customer.c_address";

     /**
     *邮箱
     */
    public static final String EMAIL = "customer.c_email";

     /**
     *相关备注信息
     */
    public static final String REMARK = "customer.c_remark";

     /**
     *云客客户id
     */
    public static final String YK_ID = "customer.c_yk_id";

     /**
     *云客跟进用户id
     */
    public static final String YK_USER_ID = "customer.c_yk_user_id";

     /**
     *云客跟进员工id
     */
    public static final String PARTNER_ID = "customer.c_partner_id";

     /**
     *上次沟通说明
     */
    public static final String LAST_CONTACT_REMARK = "customer.c_last_contact_remark";

     /**
     *上次沟通小标签 文字
     */
    public static final String LAST_CONTACT_TAG = "customer.c_last_contact_tag";

     /**
     *跟进时间
     */
    public static final String FOLLOW_TIME = "customer.c_follow_time";

     /**
     *企业性质
     */
    public static final String ECON_KIND = "customer.c_econ_kind";

     /**
     *公司类型
     */
    public static final String COM_TYPE = "customer.c_com_type";

     /**
     *经营范围
     */
    public static final String SCOPE = "customer.c_scope";

     /**
     *注册资本
     */
    public static final String REGIST_CAPI = "customer.c_regist_capi";

     /**
     *企业法人
     */
    public static final String OPER_NAME = "customer.c_oper_name";

     /**
     *员工数量
     */
    public static final String EMPLOYEES_NUM = "customer.c_employees_num";

     /**
     *所属行业
     */
    public static final String INDUSTRY = "customer.c_industry";

     /**
     *主营产品
     */
    public static final String MAIN_PRODUCE = "customer.c_main_produce";

     /**
     *最后一次沟通时间
     */
    public static final String LAST_CONTACT_TIME = "customer.c_last_contact_time";

     /**
     *上次沟通意向 1有意向/2无意向/3资料错误/4二次外呼/5无关电话/6未接通/7未明确
     */
    public static final String LAST_CONTACT_INTENT = "customer.c_last_contact_intent";

     /**
     *用户id
     */
    public static final String USER_ID = "customer.c_user_id";

     /**
     *填充detail key
     */
    public static final String CUSTOMER_FULL_DETAIL_KEY = "CUSTOMER_FULL_DETAIL";

     /**
     *填充list key
     */
    public static final String CUSTOMER_FULL_LIST_KEY = "CUSTOMER_FULL_LIST";

    /**
     * 获取来源
     *
     * @return c_source - 来源
     */
    public Integer getSource() {
        return source;
    }

    /**
     * 设置来源
     *
     * @param source 来源
     */
    public Customer setSource(Integer source) {
        this.source = source;
        return this;
    }

    /**
     * 获取排序
     *
     * @return c_sort_num - 排序
     */
    public Integer getSortNum() {
        return sortNum;
    }

    /**
     * 设置排序
     *
     * @param sortNum 排序
     */
    public Customer setSortNum(Integer sortNum) {
        this.sortNum = sortNum;
        return this;
    }

    /**
     * 获取是否显示
     *
     * @return c_show_flag - 是否显示
     */
    public Integer getShowFlag() {
        return showFlag;
    }

    /**
     * 设置是否显示
     * 1:是:Y,0:否:N
     *
     * @param showFlag 是否显示
     */
    public Customer setShowFlag(Integer showFlag) {
        this.showFlag = showFlag;
        return this;
    }

    /**
     * 获取是否删除
     *
     * @return c_del_flag - 是否删除
     */
    public Integer getDelFlag() {
        return delFlag;
    }

    /**
     * 设置是否删除
     * 1:删除:Y,0:正常:N
     *
     * @param delFlag 是否删除
     */
    public Customer setDelFlag(Integer delFlag) {
        this.delFlag = delFlag;
        return this;
    }

    /**
     * 获取客户姓名
     *
     * @return c_name - 客户姓名
     */
    public String getName() {
        return name;
    }

    /**
     * 设置客户姓名
     *
     * @param name 客户姓名
     */
    public Customer setName(String name) {
        this.name = name == null ? null : name.trim();
        return this;
    }

    /**
     * 获取客户手机号
     *
     * @return c_phone - 客户手机号
     */
    public String getPhone() {
        return phone;
    }

    /**
     * 设置客户手机号
     *
     * @param phone 客户手机号
     */
    public Customer setPhone(String phone) {
        this.phone = phone == null ? null : phone.trim();
        return this;
    }

    /**
     * 获取
     *
     * @return c_company - 
     */
    public String getCompany() {
        return company;
    }

    /**
     * 设置
     *
     * @param company
     */
    public Customer setCompany(String company) {
        this.company = company == null ? null : company.trim();
        return this;
    }

    /**
     * 获取职位
     *
     * @return c_position - 职位
     */
    public String getPosition() {
        return position;
    }

    /**
     * 设置职位
     *
     * @param position 职位
     */
    public Customer setPosition(String position) {
        this.position = position == null ? null : position.trim();
        return this;
    }

    /**
     * 获取性别
     *
     * @return c_gender - 性别
     */
    public String getGender() {
        return gender;
    }

    /**
     * 设置性别
     *
     * @param gender 性别
     */
    public Customer setGender(String gender) {
        this.gender = gender == null ? null : gender.trim();
        return this;
    }

    /**
     * 获取生日
     *
     * @return c_birthday - 生日
     */
    public String getBirthday() {
        return birthday;
    }

    /**
     * 设置生日
     *
     * @param birthday 生日
     */
    public Customer setBirthday(String birthday) {
        this.birthday = birthday == null ? null : birthday.trim();
        return this;
    }

    /**
     * 获取座机
     *
     * @return c_telephone - 座机
     */
    public String getTelephone() {
        return telephone;
    }

    /**
     * 设置座机
     *
     * @param telephone 座机
     */
    public Customer setTelephone(String telephone) {
        this.telephone = telephone == null ? null : telephone.trim();
        return this;
    }

    /**
     * 获取客户QQ
     *
     * @return c_qq - 客户QQ
     */
    public String getQq() {
        return qq;
    }

    /**
     * 设置客户QQ
     *
     * @param qq 客户QQ
     */
    public Customer setQq(String qq) {
        this.qq = qq == null ? null : qq.trim();
        return this;
    }

    /**
     * 获取微信号
     *
     * @return c_wechat - 微信号
     */
    public String getWechat() {
        return wechat;
    }

    /**
     * 设置微信号
     *
     * @param wechat 微信号
     */
    public Customer setWechat(String wechat) {
        this.wechat = wechat == null ? null : wechat.trim();
        return this;
    }

    /**
     * 获取联系地址
     *
     * @return c_address - 联系地址
     */
    public String getAddress() {
        return address;
    }

    /**
     * 设置联系地址
     *
     * @param address 联系地址
     */
    public Customer setAddress(String address) {
        this.address = address == null ? null : address.trim();
        return this;
    }

    /**
     * 获取邮箱
     *
     * @return c_email - 邮箱
     */
    public String getEmail() {
        return email;
    }

    /**
     * 设置邮箱
     *
     * @param email 邮箱
     */
    public Customer setEmail(String email) {
        this.email = email == null ? null : email.trim();
        return this;
    }

    /**
     * 获取相关备注信息
     *
     * @return c_remark - 相关备注信息
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 设置相关备注信息
     *
     * @param remark 相关备注信息
     */
    public Customer setRemark(String remark) {
        this.remark = remark == null ? null : remark.trim();
        return this;
    }

    /**
     * 获取云客客户id
     *
     * @return c_yk_id - 云客客户id
     */
    public String getYkId() {
        return ykId;
    }

    /**
     * 设置云客客户id
     *
     * @param ykId 云客客户id
     */
    public Customer setYkId(String ykId) {
        this.ykId = ykId == null ? null : ykId.trim();
        return this;
    }

    /**
     * 获取云客跟进用户id
     *
     * @return c_yk_user_id - 云客跟进用户id
     */
    public String getYkUserId() {
        return ykUserId;
    }

    /**
     * 设置云客跟进用户id
     *
     * @param ykUserId 云客跟进用户id
     */
    public Customer setYkUserId(String ykUserId) {
        this.ykUserId = ykUserId == null ? null : ykUserId.trim();
        return this;
    }

    /**
     * 获取云客跟进员工id
     *
     * @return c_partner_id - 云客跟进员工id
     */
    public String getPartnerId() {
        return partnerId;
    }

    /**
     * 设置云客跟进员工id
     *
     * @param partnerId 云客跟进员工id
     */
    public Customer setPartnerId(String partnerId) {
        this.partnerId = partnerId == null ? null : partnerId.trim();
        return this;
    }

    /**
     * 获取上次沟通说明
     *
     * @return c_last_contact_remark - 上次沟通说明
     */
    public String getLastContactRemark() {
        return lastContactRemark;
    }

    /**
     * 设置上次沟通说明
     *
     * @param lastContactRemark 上次沟通说明
     */
    public Customer setLastContactRemark(String lastContactRemark) {
        this.lastContactRemark = lastContactRemark == null ? null : lastContactRemark.trim();
        return this;
    }

    /**
     * 获取上次沟通小标签 文字
     *
     * @return c_last_contact_tag - 上次沟通小标签 文字
     */
    public String getLastContactTag() {
        return lastContactTag;
    }

    /**
     * 设置上次沟通小标签 文字
     *
     * @param lastContactTag 上次沟通小标签 文字
     */
    public Customer setLastContactTag(String lastContactTag) {
        this.lastContactTag = lastContactTag == null ? null : lastContactTag.trim();
        return this;
    }

    /**
     * 获取跟进时间
     *
     * @return c_follow_time - 跟进时间
     */
    public Date getFollowTime() {
        return followTime;
    }

    /**
     * 设置跟进时间
     *
     * @param followTime 跟进时间
     */
    public Customer setFollowTime(Date followTime) {
        this.followTime = followTime;
        return this;
    }

    /**
     * 获取企业性质
     *
     * @return c_econ_kind - 企业性质
     */
    public String getEconKind() {
        return econKind;
    }

    /**
     * 设置企业性质
     *
     * @param econKind 企业性质
     */
    public Customer setEconKind(String econKind) {
        this.econKind = econKind == null ? null : econKind.trim();
        return this;
    }

    /**
     * 获取公司类型
     *
     * @return c_com_type - 公司类型
     */
    public String getComType() {
        return comType;
    }

    /**
     * 设置公司类型
     *
     * @param comType 公司类型
     */
    public Customer setComType(String comType) {
        this.comType = comType == null ? null : comType.trim();
        return this;
    }

    /**
     * 获取经营范围
     *
     * @return c_scope - 经营范围
     */
    public String getScope() {
        return scope;
    }

    /**
     * 设置经营范围
     *
     * @param scope 经营范围
     */
    public Customer setScope(String scope) {
        this.scope = scope == null ? null : scope.trim();
        return this;
    }

    /**
     * 获取注册资本
     *
     * @return c_regist_capi - 注册资本
     */
    public String getRegistCapi() {
        return registCapi;
    }

    /**
     * 设置注册资本
     *
     * @param registCapi 注册资本
     */
    public Customer setRegistCapi(String registCapi) {
        this.registCapi = registCapi == null ? null : registCapi.trim();
        return this;
    }

    /**
     * 获取企业法人
     *
     * @return c_oper_name - 企业法人
     */
    public String getOperName() {
        return operName;
    }

    /**
     * 设置企业法人
     *
     * @param operName 企业法人
     */
    public Customer setOperName(String operName) {
        this.operName = operName == null ? null : operName.trim();
        return this;
    }

    /**
     * 获取员工数量
     *
     * @return c_employees_num - 员工数量
     */
    public Integer getEmployeesNum() {
        return employeesNum;
    }

    /**
     * 设置员工数量
     *
     * @param employeesNum 员工数量
     */
    public Customer setEmployeesNum(Integer employeesNum) {
        this.employeesNum = employeesNum;
        return this;
    }

    /**
     * 获取所属行业
     *
     * @return c_industry - 所属行业
     */
    public String getIndustry() {
        return industry;
    }

    /**
     * 设置所属行业
     *
     * @param industry 所属行业
     */
    public Customer setIndustry(String industry) {
        this.industry = industry == null ? null : industry.trim();
        return this;
    }

    /**
     * 获取主营产品
     *
     * @return c_main_produce - 主营产品
     */
    public String getMainProduce() {
        return mainProduce;
    }

    /**
     * 设置主营产品
     *
     * @param mainProduce 主营产品
     */
    public Customer setMainProduce(String mainProduce) {
        this.mainProduce = mainProduce == null ? null : mainProduce.trim();
        return this;
    }

    /**
     * 获取最后一次沟通时间
     *
     * @return c_last_contact_time - 最后一次沟通时间
     */
    public Date getLastContactTime() {
        return lastContactTime;
    }

    /**
     * 设置最后一次沟通时间
     *
     * @param lastContactTime 最后一次沟通时间
     */
    public Customer setLastContactTime(Date lastContactTime) {
        this.lastContactTime = lastContactTime;
        return this;
    }

    /**
     * 获取上次沟通意向 1有意向/2无意向/3资料错误/4二次外呼/5无关电话/6未接通/7未明确
     *
     * @return c_last_contact_intent - 上次沟通意向 1有意向/2无意向/3资料错误/4二次外呼/5无关电话/6未接通/7未明确
     */
    public Integer getLastContactIntent() {
        return lastContactIntent;
    }

    /**
     * 设置上次沟通意向 1有意向/2无意向/3资料错误/4二次外呼/5无关电话/6未接通/7未明确
     *
     * @param lastContactIntent 上次沟通意向 1有意向/2无意向/3资料错误/4二次外呼/5无关电话/6未接通/7未明确
     */
    public Customer setLastContactIntent(Integer lastContactIntent) {
        this.lastContactIntent = lastContactIntent;
        return this;
    }

    /**
     * 获取用户id
     *
     * @return c_user_id - 用户id
     */
    public String getUserId() {
        return userId;
    }

    /**
     * 设置用户id
     *
     * @param userId 用户id
     */
    public Customer setUserId(String userId) {
        this.userId = userId == null ? null : userId.trim();
        return this;
    }
}